// 累加树，二叉搜索中序遍历，tree[0]表示所有节点的和，tree[1]表示[1,n-1]节点的和

// 遍历顺序为中序的逆序
void helper(struct TreeNode *root, int *sum) {
    if (root == NULL) return ;
    helper(root->right, sum);
    *sum += root->val;  // 记录累加值
    root->val = *sum;    // 更新到节点
    helper(root->left, sum);
}
struct TreeNode* convertBST(struct TreeNode* root){
    int sum = 0;
    helper(root, &sum);
    return root;
}